/** 通用常量
 *
 */
const constCommon = {
  // 表单项控件类型
  formItemType: {
    // 自定义插槽
    slot: {
      name: 'slot'
    },
    // 文本框
    inputText: {
      name: 'inputText'
    },
    // 数字框
    inputNumber: {
      name: 'inputNumber'
    },
    // 文本域
    textarea: {
      name: 'textarea'
    },
    // 下拉框-静态数据源
    selectStatic: {
      name: 'selectStatic'
    },
    // 下拉框-从数据字典获取
    selectDict: {
      name: 'selectDict'
    },
    // 开关
    switch: {
      name: 'switch'
    },
    // 复选框
    checkbox: {
      name: 'checkbox'
    },
    // 单选框
    radio: {
      name: 'radio'
    },
    // 日期选择
    datePicker: {
      name: 'datePicker',
      //一些可选配置
      config: {
        year: {
          mode: 'year'
        },
        month: {
          mode: 'month'
        }
      }
    },
    // 日期选择 区间
    datePickerRange: {
      name: 'datePickerRange',
      //一些可选配置
      config: {
        year: {
          mode: 'year'
        },
        month: {
          mode: 'month'
        }
      }
    },
    // 静态文本
    staticHtml: {
      name: 'staticHtml'
    },
  },
  //主题分类list
  themeList: [
    {
      value: 'default',
      color: '#fff',
      label: '默认',
    },

    {
      value: 'primary',
      color: '#409eff',
      label: '主要',
    },
    {
      value: 'success',
      color: '#67C23A',
      label: '成功',
    },
    {
      value: 'warning',
      color: '#E6A23C',
      label: '警告',
    },
    {
      value: 'danger',
      color: '#F56C6C',
      label: '危险',
    },
  ],

  // 固定数据字典
  busConst: {
    // 机构类型
    officeType: [
      {
        value: 0,
        label: '默认',
      },
      {
        value: 1,
        label: '服务中心',
      },
      {
        value: 2,
        label: '院方科室',
      },
      {
        value: 3,
        label: '医院',
      },
    ],
    // 商品类型
    matrType: [
      {
        value: 'matr',
        label: '耗材',
      },
      {
        value: 'drug',
        label: '药品',
      },
      {
        value: 'reagent',
        label: '试剂',
      }
    ],
    matrTypeMatr: 'matr',
    matrTypeDrug: 'drug',
    matrTypeRreagent: 'reagent',

    // 开票单分组
    invoiceGroupList: [
      {
        value: 'period1',
        label: '期号+品名+品规+批次+价格',
        hideColumns: ['code']
      },
      {
        value: 'period2',
        label: '期号+品名+品规+价格',
        hideColumns: ['code', 'lot']
      },
      {
        value: 'bill1',
        label: '记账单号+品名+品规+批次+价格',
        hideColumns: ['periodNo']
      }
    ],

    // 供货申请业务类型
    hpSupplyTypeList: [
      {
        value: 'supply_matr',
        label: '物资供应',
      },
      {
        value: 'supply_device',
        label: '设备供应',
      },
      {
        value: 'service_itsm',
        label: '工单服务',
      },
    ]

  },

  // 非业务数据字典
  nobusConst: {
    // 菜单类型
    menuType: [
      {
        value: 'app',
        label: '移动端',
      },
      {
        value: 'web',
        label: 'web端',
      }
    ],
    // 是否类型，值为数字
    yesNoNumber: [
      {
        value: 1,
        label: '是',
      },
      {
        value: 0,
        label: '否',
      }
    ],
    yesNoNumberValue: [1, 0],
    // 是否类型，值为布尔
    yesNoBoolean: [
      {
        value: true,
        label: '是',
      },
      {
        value: false,
        label: '否',
      }
    ],
    yesNoBooleanValue: [true, false],
    // 打印类型
    printerSelOrient: [
      {
        value: 1,
        label: '纵向打印，固定纸张',
      },
      {
        value: 2,
        label: '横向打印，固定纸张',
      },
      {
        value: 3,
        label: '纵向打印，高度自适应',
      },
    ],
    // 配置类型
    viewTypeList: [
      {
        value: 'base',
        label: '常规配置',
      },
      {
        value: 'import',
        label: '数据导入配置',
      },
      {
        value: 'select',
        label: '选择列表配置',
      },
    ],
    // 数据过滤类型
    dataFilterTypeList: [
      { value: '', label: '未配置', remark: '不做任何数据筛选'},
      { value: 'deptId', label: '科室', remark: '字段dept_Id,登录人所在科室' },
      { value: 'warehouseDeptId', label: '工位科室', remark: '字段dept_Id,工作台所设置仓库对应的科室'},

      { value: 'userDeptId', label: '关联科室', remark: '字段dept_Id,登录人所在科室及所关联仓库科室' },
      { value: 'userDeptIdAndOr', label: '关联所有科室', remark: '字段包含dept_id,登录人所在科室及所关联仓库科室' },

      { value: 'creator', label: '本人', remark: '字段creator,创建人为登录人'},
      { value: 'warehouseId', label: '工位', remark: '字段warehouse_id,工作台所设置的仓库'},
    ],
    // 数据过滤类型
    formDrawerWidthList: [
      { value: '100', label: '百分之100'},
      { value: '90', label: '百分之90'},
      { value: '80', label: '百分之80'},
      { value: '50', label: '百分之50'},
      { value: '600', label: '小窗口'},
    ]
  },
  // 数据字典类型
  dictType: {
    // 打印业务类型
    printBusType: 'print_bus_type',
    // 打印类型
    printType: 'print_type',
    // 商品基础分类
    baseMatrType: 'base_material_type',
    // 科室类型
    baseDeptType: 'base_dept_type',
    // 商品模板类型
    tempType: 'temp_type',
    // 跟台备货
    tempTypeOperBag: 'oper_bag',
    // 对齐方式
    align: 'report_grid_field_align',
    // 固定方式
    fixed: 'table_fixed',
    // 报表网格字段查询类型
    queryType: 'report_grid_field_query_type',
    // 资质分类
    certBusinessType: 'cert_business_type',
    // 医院资质分类
    certHospital: 'cert_hospital',
    // 消息类型
    msgType: 'common_msg_type',
    //编号规则表达式
    seriaCond: 'common_serial_cond',
    //编码段分隔符
    serialDelimiter: 'common_serial_delimiter',
    //机构类型
    officeType: 'upms_office_type',
    //菜单类型
    upmsMenuType: 'upms_menu_type',
    //菜单打开方式
    menuTarget: 'upms_menu_target',
    //医院等级
    hospitalLevel: 'hospital_level',
    //医院类型
    hospitalType: 'hospital_type',
    //医院性质
    hospitalCharacter: 'hospital_character',
    //编码格式
    baseInputCodingType: 'base_input_coding_type',
    //是否(绿红)
    commonYesNo: 'common_yes_no',
    //是否(红绿)
    commonYesNoReverse: 'common_yes_no_reverse',
    //结算单记账状态
    settlementBillStatus: 'settlement_bill_status',
    //结算单记账明细状态
    settlementBillItemStatus: 'settlement_bill_item_status',
    //开票单状态
    settlementInvoiceStatus: 'settlement_invoice_status',
    //供方资格申请单状态
    baseSupplierApplicantStatus: 'base_supplier_applicant_status',
  },

  // 选择视图标志
  viewKeySelect: {
    // 供应商选择
    supplier: 'base_supplier',
    // 厂商选择
    mfg: 'base_mfg',
    // 管理分类选择
    matrCategory: 'base_matr_category',
    // his编码选择
    matrHis: 'base_matr_his_select',
    ////设备-资产分类
    assetClass: 'base_asset_classify',
    ////设备-财政分类
    procClass: 'base_proc_classify',
    ////设备-医疗设备分类
    medicalClass: 'base_medical_classify',

  },

  // true 值类型
  trueValueList: [true, 'true', 1, '1'],

  // 列表表单组件默认往前查询几天
  dataViewDefaultDateBefore: -5,

  // 按钮标志
  btnKeyMap: {
    // 表格按钮
    table: {
      // 顶部添加操作
      add: 'vb-add'
    },
    // 表格顶部按钮
    tableTop: {
      // 顶部添加操作
      add: 'vb-add',
      // 顶部删除操作
      delete: 'vb-delete',
    },
    // 表格右侧按钮
    tableRight: {
      // 顶部添加操作
      edit: 'vrb-edit',
      // 顶部删除操作
      delete: 'vrb-delete',
    },
    // 表单顶部按钮
    formTop: {
      // 顶部添加操作
      add: 'vfb-add',
      // 顶部删除操作
      save: 'vfb-save',
      // 顶部删除操作
      delete: 'vfb-delete',
    }
  },

  // 类型分类
  certTypeNameMap: {
    sp: {
      key: 'sp',
      businessTypeCode: '10',
      title:'供应商',
      findById: '/base/suppliers/findByIdCommon',
      id: 'supplierId'
    },
    mfg: {
      key: 'mfg',
      businessTypeCode: '30',
      title:'厂商',
      findById: '/base/manufacturers/findByIdCommon',
      id: 'manufacturerId'
    },
    cat: {
      key: 'cat',
      businessTypeCode: '21',
      title:'品类',
      findById: '/base/material_catalogs/findByIdCommon',
      id: 'catalogId'
    },
    matr: {
      key: 'matr',
      businessTypeCode: '20',
      title:'商品',
      findById: '/base/materials/findByIdCommon',
      id: 'materialId'
    },
  },

  deptType: {
    supplier: 'SUPPLIER',
    hospital: 'HOSPITAL',
    platform: 'PLATFORM',
  },
}

export default constCommon
